package org.backend.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.backend.pojo.entity.Favor;
import org.backend.pojo.dto.ProductSummaryDTO;
import org.backend.pojo.entity.Product;
import org.backend.pojo.vo.ProductCategoriesVO;

import java.util.List;

@Mapper
public interface ProductMapper {
    List<Product> findAll2Web(String userId);

    List<Product> findAll(String userId, String openid);

    List<ProductSummaryDTO> findProdStats(String userId);

    int publish(Product product);

    int delete(Integer productId);

    int revise(Product product);

    List<Product> getAllProList();

    List<Product> getPopularProducts();

    Product getProductById(Integer productId);

    List<ProductCategoriesVO> getProductCategories();

    Favor getFavor(Favor favor);

    int addFavor(Favor favor);

    int removeFavor(Favor favor);

    List<Favor> getAllFavor(Favor favor);

    void update(Product product);
}
